x86: show remote CPU state upon fatal NMI or unknown MCE
authorJan Beulich <jbeulich@suse.com>
Tue, 21 Jun 2016 10:06:13 +0000 (12:06 +0200)
committerJan Beulich <jbeulich@suse.com>
Tue, 21 Jun 2016 10:06:13 +0000 (12:06 +0200)
commit266b6539bf5671d8bad10900c79eb02d2cd49d15
treeb2326c391341bcdce4ec9abed833d276c2978bf7
parente9abd817522b9d793104b71c2fdf1858ae9de920
x86: show remote CPU state upon fatal NMI or unknown MCE

Quite frequently the watchdog would hit an innocent CPU, e.g. one
trying to acquire a spin lock a remote CPU holds for extended periods
of time, or a random CPU in TSC calbration rendezvous. In such cases
the register and stack dump for that CPU doesn't really help in the
analysis of the problem.

To keep things reasonable on large systems, only log CS:RIP by default.
This can be overridden via a new command line option such that full
register/stack state would get logged.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
docs/misc/xen-command-line.markdown
xen/arch/x86/cpu/mcheck/mce.c
xen/arch/x86/nmi.c
xen/arch/x86/traps.c
xen/arch/x86/x86_64/entry.S
xen/include/asm-x86/processor.h